Xceed .NET Libraries Documentation
Xceed.Zip Assembly / Xceed.Zip Namespace / QuickZip Class / Zip Method / Zip(String,String,Boolean,Boolean,Boolean,SfxPrefix,DiskRequiredCallback,Object,String[]) Method
The fully-qualified path and name of the zip file.The password that will be used to encrypt the files.Boolean value indicating if existing files should be overwritten.Boolean value indicating if files contained within sub-folders should be added to the zip file.Boolean value indicating if the directory structure should be preserved in the zip file.The XceedSfxPrefix used to create the self-extracting zip file.The callback method called whenever the DiskRequired event is triggered.Opaque data which will be passed back to the callback method.zipFileName All subfolders will also be scanned for the specified file(s), even if wildcards are not used, if recursive is set to true.a null reference (Nothing in Visual Basic)


In This Topic
    Zip(String,String,Boolean,Boolean,Boolean,SfxPrefix,DiskRequiredCallback,Object,String[]) Method
    In This Topic
    Adds files to a self-extracting spanned zip file specifying an XceedSfxPrefix which will be used as the source module, the callback method called when requesting a new disk, using an encryption password and specifying whether existing files will be overwritten and if the directory structure will be preserved.
    Syntax
    'Declaration
     
    
    Public Overloads Shared Sub Zip( _
       ByVal zipFileName As String, _
       ByVal encryptionPassword As String, _
       ByVal replaceExistingFiles As Boolean, _
       ByVal recursive As Boolean, _
       ByVal preservePaths As Boolean, _
       ByVal sfx As SfxPrefix, _
       ByVal diskRequiredCallback As QuickZip.DiskRequiredCallback, _
       ByVal userParams As Object, _
       ByVal ParamArray filesToZip() As String _
    ) 
    'Usage
     
    
    Dim zipFileName As String
    Dim encryptionPassword As String
    Dim replaceExistingFiles As Boolean
    Dim recursive As Boolean
    Dim preservePaths As Boolean
    Dim sfx As SfxPrefix
    Dim diskRequiredCallback As QuickZip.DiskRequiredCallback
    Dim userParams As Object
    Dim filesToZip() As String
     
    QuickZip.Zip(zipFileName, encryptionPassword, replaceExistingFiles, recursive, preservePaths, sfx, diskRequiredCallback, userParams, filesToZip)

    Parameters

    zipFileName
    The fully-qualified path and name of the zip file.The password that will be used to encrypt the files.Boolean value indicating if existing files should be overwritten.Boolean value indicating if files contained within sub-folders should be added to the zip file.Boolean value indicating if the directory structure should be preserved in the zip file.The XceedSfxPrefix used to create the self-extracting zip file.The callback method called whenever the DiskRequired event is triggered.Opaque data which will be passed back to the callback method.zipFileName All subfolders will also be scanned for the specified file(s), even if wildcards are not used, if recursive is set to true.a null reference (Nothing in Visual Basic)
    encryptionPassword
    replaceExistingFiles
    recursive
    preservePaths
    sfx
    diskRequiredCallback
    userParams
    filesToZip
    Remarks

    If zipFileName does not exist, it will be created and then the files will be added.

    By default, Unicode and FileTimes extra headers are stored in the zip file when new items are added to the zip file. The extra headers of items that already exist in the zip file will not be modified.

    The EncryptionMethod.Compatible encryption method will be used with this overload.

    All zip files will automatically be created in the Zip64 zip file format if the limitations of the regular Zip format are reached.

    Example
    Dim sfx As New XceedSfxPrefix(New DiskFile("C:\Program Files\Xceed Components\Xceed Zip for .NET\Sfx\xcdsfx32.bin")) sfx.DialogStrings(DialogStrings.Title) = "Welcome to Xceed Zip for .NET!" sfx.DefaultDestinationFolder = "C:\" sfx.ExistingFileBehavior = ExistingFileBehavior.OverwriteOlderOnly QuickZip.Zip("a:\sfx.exe", String.Empty, True, True, False, sfx, New QuickZip.DiskRequiredCallback(AddressOf Me.QuickDiskRequired), Nothing, "d:\file.txt") ' This method will handle the DiskRequired events that are raised when creating ' spanned or split zip files. Private Function QuickDiskRequired(ByVal zipFile As String, ByVal diskNumber As Integer, ByVal userData As Object) As Boolean If (MessageBox.Show("Disk #" + diskNumber.ToString() + " is required.", "Disk Required", MessageBoxButtons.OKCancel) = DialogResult.OK) Then Return True Else Return False End If End FunctionXceedSfxPrefix sfx = new XceedSfxPrefix( new DiskFile( @"C:\Program Files\Xceed Components\Xceed Zip for .NET\Sfx\xcdsfx32.bin" ) ); sfx.DialogStrings[ DialogStrings.Title ] = "Welcome to Xceed Zip for .NET!"; sfx.DefaultDestinationFolder = @"C:\"; sfx.ExistingFileBehavior = ExistingFileBehavior.OverwriteOlderOnly; QuickZip.Zip( @"a:\sfx.exe", string.Empty, true, true, false, sfx, new QuickZip.DiskRequiredCallback( this.QuickDiskRequired ), null, @"d:\file.txt" ); // This method will handle the DiskRequired events that are raised when creating // spanned or split zip files. private bool QuickDiskRequired( string zipFile, int diskNumber, object userData ) { if( MessageBox.Show( "Disk #" + diskNumber.ToString() + " is required.", "Disk Required", MessageBoxButtons.OKCancel ) == DialogResult.OK ) return true; else return false; }
    Example
    Dim sfx As New XceedSfxPrefix(New DiskFile("C:\Program Files\Xceed Components\Xceed Zip for .NET\Sfx\xcdsfx32.bin")) sfx.DialogStrings(DialogStrings.Title) = "Welcome to Xceed Zip for .NET!" sfx.DefaultDestinationFolder = "C:\" sfx.ExistingFileBehavior = ExistingFileBehavior.OverwriteOlderOnly QuickZip.Zip("a:\sfx.exe", String.Empty, True, True, False, sfx, New QuickZip.DiskRequiredCallback(AddressOf Me.QuickDiskRequired), Nothing, "d:\file.txt") ' This method will handle the DiskRequired events that are raised when creating ' spanned or split zip files. Private Function QuickDiskRequired(ByVal zipFile As String, ByVal diskNumber As Integer, ByVal userData As Object) As Boolean If (MessageBox.Show("Disk #" + diskNumber.ToString() + " is required.", "Disk Required", MessageBoxButtons.OKCancel) = DialogResult.OK) Then Return True Else Return False End If End Function
    XceedSfxPrefix sfx = new XceedSfxPrefix( new DiskFile( @"C:\Program Files\Xceed Components\Xceed Zip for .NET\Sfx\xcdsfx32.bin" ) ); sfx.DialogStrings[ DialogStrings.Title ] = "Welcome to Xceed Zip for .NET!"; sfx.DefaultDestinationFolder = @"C:\"; sfx.ExistingFileBehavior = ExistingFileBehavior.OverwriteOlderOnly; QuickZip.Zip( @"a:\sfx.exe", string.Empty, true, true, false, sfx, new QuickZip.DiskRequiredCallback( this.QuickDiskRequired ), null, @"d:\file.txt" ); // This method will handle the DiskRequired events that are raised when creating // spanned or split zip files. private bool QuickDiskRequired( string zipFile, int diskNumber, object userData ) { if( MessageBox.Show( "Disk #" + diskNumber.ToString() + " is required.", "Disk Required", MessageBoxButtons.OKCancel ) == DialogResult.OK ) return true; else return false; }
    Supported Frameworks

    .NET: net5.0, net5.0-windows, net6.0, net6.0-macos, net6.0-windows, net7.0, net7.0-macos, net7.0-windows, net8.0, net8.0-browser, net8.0-macos, net8.0-windows, net9.0, net9.0-browser, net9.0-macos, net9.0-windows, net10.0, net10.0-browser, net10.0-macos, net10.0-windows.

    .NET Standard: netstandard2.0, netstandard2.1

    .NET Framework: net20, net35, net40, net403, net45, net451, net452, net46, net461, net462, net463, net47, net471, net472, net48, net481.

    See Also